package co.sumset.conexion;

import java.util.ArrayList;

import co.sumset.dao.DAOContenedor;
import co.sumset.entidades.Partida;
import co.sumset.interfaces.InterfaceDAOContenedor;
import co.sumset.interfaces.InterfaceDAOPartida;

/**
 * Clase encargada de la administracion del Interface del DAOPartida.
 * 
 * @author Cristian Raul Pineda Rodriguez.
 *
 */
public class ConexionPartida {

	private InterfaceDAOContenedor contenedor;// Administra los Interfaces de los DAO's

	/**
	 * Metodo Constructor. Inicializa El contendor de Interfaces de los DAO's
	 */
	public ConexionPartida() {
		super();
		contenedor = new DAOContenedor();
	}

	/**
	 * Metodo que permite comunicar al DAOPartida para crear Partidas.
	 * 
	 * @param nuevoJuego
	 * @throws Exception
	 */
	public void crearPartida(Partida nuevoJuego) throws Exception
	{
		InterfaceDAOPartida daoJuego=contenedor.crearDAOPartida();

		daoJuego.crearPartida(nuevoJuego);
	}

	/**
	 * Metodo que permite comunicar al DAOPartida para listar
	 *  las partidad segun su nivel de dificultad.
	 * 
	 * @param nivelDificultad
	 * @return Una lista con las partidas segun sea el nivel del juego.
	 * @throws Exception
	 */
	public ArrayList<Partida> listarJuegosNivel(String nivelDificultad) throws Exception
	{
		InterfaceDAOPartida daoJuego=contenedor.crearDAOPartida();

		return daoJuego.listarPartidaNivel(nivelDificultad);
	}
}